<?php

require_once("../../util/util.php");

class VeiculoVendaDao {

    public function retornaVendedores($conexao) {
        $vendedores = array();

        $query = "select id,nome,cpfcnpj from tbpessoas 
                  where tipo='FUNCIONARIO' and deletado='N'
                  order by nome";
        
        $res = mysql_query($query, $conexao);

        $i = 0;
        while ($row = mysql_fetch_object($res)) {
            $vendedores[$i]["id"] = $row->id;
            $vendedores[$i]["nome"] = $row->nome;
            $vendedores[$i]["cpf"] = $row->cpfcnpj;
            $i++;
        }

        return $vendedores;
    }

    public function retornaAvalistas($conexao) {
        $avalistas = array();

        $query = "select id,nome,cpfcnpj from tbpessoas 
                  where tipo='CLIENTE' and avalista='S' and deletado='N'
                  order by nome";
        
        $res = mysql_query($query, $conexao);

        $i = 0;
        while ($row = mysql_fetch_object($res)) {
            $avalistas[$i]["id"] = $row->id;
            $avalistas[$i]["nome"] = $row->nome;
            $avalistas[$i]["cpf"] = $row->cpfcnpj;
            $i++;
        }

        return $avalistas;
    }

    public function retornaClientes($conexao) {
        $clientes = array();

        $query = "select id,nome,cpfcnpj from tbpessoas 
                  where tipo='CLIENTE' and deletado='N'
                  order by nome";
        
        $res = mysql_query($query, $conexao);

        $i = 0;
        while ($row = mysql_fetch_object($res)) {
            $clientes[$i]["id"] = $row->id;
            $clientes[$i]["nome"] = $row->nome;
            $clientes[$i]["cpf"] = $row->cpfcnpj;
            $i++;
        }

        return $clientes;
    }

    public function retornaCorretores($conexao) {
        $corretores = array();

        $query = "select id,nome,cpfcnpj from tbpessoas 
                  where corretor='S' and deletado='N'
                  order by nome";
        
        $res = mysql_query($query, $conexao);

        $i = 0;
        while ($row = mysql_fetch_object($res)) {
            $corretores[$i]["id"] = $row->id;
            $corretores[$i]["nome"] = $row->nome;
            $corretores[$i]["cpf"] = $row->cpfcnpj;
            $i++;
        }

        return $corretores;
    }

    public function retornaVeiculos($conexao, $arrayDados) {
        $dadosVeiculo = array();

        $query = "select * from tbveiculo where placa='" . $arrayDados["placa"] . "' and estoqueLoja='S' and deletado='N'";
        $res = mysql_query($query, $conexao);
        $nrow = mysql_num_rows($res);

        if ($nrow > 0) {
            $row = mysql_fetch_object($res);

            $dadosVeiculo[0]["id"] = $row->id;
            $dadosVeiculo[0]["idFornecedor"] = $row->idFornecedor;
            $dadosVeiculo[0]["placa"] = $row->placa;
            $dadosVeiculo[0]["chassi"] = $row->chassi;
            $dadosVeiculo[0]["anoFabricacao"] = $row->anoFabricacao;
            $dadosVeiculo[0]["anoModelo"] = $row->anoModelo;
            $dadosVeiculo[0]["especieTipo"] = $row->especieTipo;
            $dadosVeiculo[0]["marca"] = $row->marca;
            $dadosVeiculo[0]["modelo"] = $row->modelo;
            $dadosVeiculo[0]["renavam"] = $row->renavam;
            $dadosVeiculo[0]["cor"] = $row->cor;
            $dadosVeiculo[0]["combustivel"] = $row->combustivel;
            $dadosVeiculo[0]["nome"] = $row->nome;
            $dadosVeiculo[0]["cpfCnpj"] = $row->cpfCnpj;
            $dadosVeiculo[0]["estado"] = $row->estado;
            $dadosVeiculo[0]["cidade"] = $row->cidade;
            $dadosVeiculo[0]["bairro"] = $row->bairro;
            $dadosVeiculo[0]["rua"] = $row->rua;
            $dadosVeiculo[0]["valorCompra"] = $row->valorCompra;
            $dadosVeiculo[0]["valorAgenciamento"] = $row->valorAgenciamento;
            $dadosVeiculo[0]["naturezaOperacao"] = $row->naturezaOperacao;
            $dadosVeiculo[0]["observacao"] = $row->observacao;
            $dadosVeiculo[0]["estoqueLoja"] = $row->estoqueLoja;
            $dadosVeiculo[0]["oficina"] = $row->oficina;
            $dadosVeiculo[0]["idLoja"] = $row->idLoja;
            $dadosVeiculo[0]["idOficina"] = $row->idOficina;
            $dadosVeiculo[0]["corretor"] = $row->corretor;
            $dadosVeiculo[0]["valorCorretagem"] = $row->valorCorretagem;
            $dadosVeiculo[0]["valorVenda"] = $row->valorVenda;
        }

        return $dadosVeiculo;
    }

    public function gerarMovimento($conexao, $dadosVenda) {
        $query = "insert into tbmovimentacao(idVeiculo,valorTotal,idUser,parcelas,natureza,tipo,idVendedor,idCliente,
		                                     idFinanceira,idCorretor,idAvalista,formaPagamento)
		          values(" . $dadosVenda["idVeiculo"] . "," . $dadosVenda["valorFinal"] . "," . $_SESSION["dadosUsuario"]["login"] . ",
				         " . $dadosVenda["parcelas"] . ",9,'RECEBIMENTO'," . $dadosVenda["idVendedor"] . ",
						 " . $dadosVenda["idCliente"] . "," . $dadosVenda["idFinanceira"] . "," . $dadosVenda["idCorretor"] . ",
						 " . $dadosVenda["idAvalista"] . ",'" . $dadosVenda["formaPagamento"] . "')";

        $res = mysql_query($query, $conexao);
        return mysql_insert_id();
    }

    public function gerarTituloEntrada($conexao, $dadosVenda, $idMovimento) {
        $query = "insert into tbtitulos(dataVencimento,valor,parcela,entrada,idMovimento,idVeiculo)
		  values('" . date("Y-m-d") . "'," . $dadosVenda["entrada"] . ",1,'S'," . $idMovimento . "," . $dadosVenda["idVeiculo"] . ")";

        $res = mysql_query($query, $conexao);
        return $res;
    }

    public function gerarTitulos($conexao, $dadosVenda, $idMovimento) {
        $retorno = true;
        $dias = 0;
        $titulo = 0;

        for ($i = 1; $i <= $dadosVenda["parcelas"]; $i++) {

            if ($i == 1) {
                $titulo = $i + $dadosVenda["tituloEntrada"];
            } else {
                $titulo = $titulo + 1;
            }

            $query = "insert into tbtitulos(dataVencimento,valor,parcela,idMovimento,idVeiculo,desconto,multa,juros)
		    	      values('" . Util::somarData($dadosVenda["dataPParcela"], $dias) . "'," . $dadosVenda["valorParcela"] . ",
					         " . $titulo . "," . $idMovimento . "," . $dadosVenda["idVeiculo"] . "," . $dadosVenda["descontoTitulo"] . ",
							 " . $dadosVenda["multa"] . "," . $dadosVenda["juros"] . ")";

            $res = mysql_query($query, $conexao);

            if (!$res) {
                $retorno = false;
                $break;
            }

            $dias = $dias + 30;
        }

        return $retorno;
    }

    public function removerVeiculoEstoque($conexao, $dadosVenda) {
        $query = "update tbveiculo set estoqueLoja='N' where id=" . $dadosVenda["idVeiculo"];
        return mysql_query($query, $conexao);
    }

    public function gerarMovimentoCorretagem($conexao, $dadosVenda) {
        $query = "insert into tbmovimentacao(idVeiculo,valorTotal,idUser,parcelas,natureza,tipo,idVendedor,idCliente,idCorretor)
		          values(" . $dadosVenda["idVeiculo"] . "," . $dadosVenda["valorCorretagem"] . "," . $_SESSION["dadosUsuario"]["login"] . ",
				         1,10,'PAGAMENTO'," . $dadosVenda["idVendedor"] . "," . $dadosVenda["idCliente"] . "," . $dadosVenda["idCorretor"] . ")";

        $res = mysql_query($query, $conexao);
        return mysql_insert_id();
    }

    public function gerarTitulosCorretagem($conexao, $dadosVenda, $idMovimentoCorretagem) {
        $query = "insert into tbtitulos(dataVencimento,valor,parcela,idMovimento,idVeiculo)
				  values('" . date("Y-m-d") . "'," . $dadosVenda["valorCorretagem"] . ",
						 1," . $idMovimentoCorretagem . "," . $dadosVenda["idVeiculo"] . ")";

        return mysql_query($query, $conexao);
    }

    public function retornaTitulosMovimento($conexao, $idMovimento) {

        $arrayTitulos = array();
        
        $query = "select t.id,t.dataVencimento,t.valor,t.parcela,m.valorTotal,
                  t.entrada
                  from tbtitulos t
                  inner join tbmovimentacao m on(m.id = t.idMovimento)
                  where m.id=".$idMovimento;
        
        $res   = mysql_query($query,$conexao);
        $num   = mysql_num_rows($res);
        
        if($num>0)
        {
            $i=0;
            while($row = mysql_fetch_object($res))
            {               
               ($row->entrada=="S") ? $parcela = "ENTRADA" : $parcela = $row->parcela;
               $arrayTitulos[$i]["parcela"] = $parcela; 
                
               $arrayTitulos[$i]["id"] = $row->id;                              
               $arrayTitulos[$i]["dataVencimento"] = $row->dataVencimento;
               $arrayTitulos[$i]["valor"] = $row->valor;
               $arrayTitulos[$i]["valorTotal"] = $row->valorTotal;
               $i++;
            }
        }
        else
        {
            return $arrayTitulos;
        }
        
        return $arrayTitulos;
    }
    
    public function atualizarTitulos($titulos,$conexao){
        
        $retorno = true;
        
        for($i=0; $i<count($titulos); $i++){
            
            $query = "update tbtitulos set dataVencimento='".$titulos[$i]['data']."',valor=".$titulos[$i]['valor']."
                      where id=".$titulos[$i]['id'];
            $res   = mysql_query($query,$conexao);
            
            if(!$res){
                $retorno = false;
                break;
            }            
        }
        
        return $retorno;
    }

}

?>